package com.dd.cloud.open.api;

import com.dd.cloud.user.entity.aicms.AicmsDepartment;
import com.dd.cloud.user.entity.aicms.AicmsDisease;
import com.dd.cloud.user.entity.aicms.AicmsDoctor;
import com.dd.cloud.user.entity.aicms.AicmsSymptom;
import com.dd.cloud.user.req.aicms.AskDoctorParamsReq;
import com.dd.cloud.user.vo.DiagnosticRecordVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * @author Lx
 * @version 1.0
 * @date 2023/9/11
 */
@FeignClient("dd-user-service")
public interface AICMSServiceClient {
    @PostMapping(value = "/ai/ask", consumes = "application/x-www-form-urlencoded")
    ResponseEntity<DiagnosticRecordVo> ask(AskDoctorParamsReq req);

    @GetMapping("/ai/dep/list")
    ResponseEntity<List<AicmsDepartment>> queryDepartMents();

    @GetMapping("/ai/dise")
    ResponseEntity<List<AicmsDisease>> queryDiseases(@RequestParam("depId") String depId);

    @GetMapping("/ai/subdise")
    ResponseEntity<List<AicmsDisease>> querySubDiseases(@RequestParam("jibingId") String jibingId);

    @GetMapping("/ai/symptom")
    ResponseEntity<List<AicmsSymptom>> querySymptoms(@RequestParam(value = "xuHao") String xuHao);

    @GetMapping("/ai/doctor")
    ResponseEntity<AicmsDoctor> queryDoctor(@RequestParam("jibingId") String jibingId);
}
